到目前為止我們已經將 vim
打造成一個堪稱 "IDE" 的工具了~
緊接著我們來說說一些小工具來加速我們的開發 (我也是摸索了很多個不同的套件,才把自己覺得好用的納入我的 IDE 中)
Plug 'scooloose/nerdcommenter'
這是一款能用快捷鍵就進行註解的工具,在 Normal Mode
及 Vistual Mode
下輸入 <Leader>cc
就可以註解當前行囉!
基本的指令如下:
快捷鍵 | 說明 |
---|---|
<Leader>cc |
加入註解 |
<Leader>cn |
巢狀加入註解 |
<Leader>c<space> |
切換註解 |
<Leader>cs |
區塊註解 |
也能指定註解格式:
let g:NERDCustomDelimiters = { 'c': { 'left': '/**','right': '*/' } }
只要是 .c
的檔案就會使用上面制訂的符號進行註解了~ (如果不需要右方的關閉符號就不需要定義)
你喜歡註解符號後面多一個空白嗎?
let g:NERDSpaceDelims = 1
可是要按三個鍵才能下註解好煩喔。
map <C-_> <Leader>c<space>
這樣我按下 ctrl
+ /
就可以進行註解了呢!
Plug 'kien/auto-pairs'
一開始用 vim
的時候,想要打個成對的單引號 '
或雙引號 "
都得打兩次!有了這個套件後,它就可以自動幫我把成對的符號補齊了~
不僅如此,它還能在按下 backspace 時檢查是否有成對的符號、輸入結尾符號時判斷是否成對、在成對的符號之間按下空白後自動左右各增加一空白 ... 等
總之這些想得到的功能 它 都 有 !!!是不是很方便呢~
Plug 'matze/vim-move'
這是一個將當前所在行或是選取的行,進行上下移動的套件。
而我當然也很懶啦~所以在 Normal Mode
及 Vitual Mode
下又動了一些手腳:
vmap <C-j> <Plug>MoveBlockDown
vmap <C-k> <Plug>MoveBlockUp
nmap <C-j> <Plug>MoveLineDown
nmap <C-k> <Plug>MoveLineUp
這讓我可以僅使用 ctrl
+ (j
, k
) 就進行移動了,根本不用輸入什麼指令!
grep
下的文字搜尋工具Plug 'mileszs/ack.vim'
ack
是一款 grep like 文字搜尋工具,在 linux 能針對當前目錄進行全域搜尋 (速度比 Fuzzy Search 快得多)~
而在 vim
底下安裝的話也是相同意思,這邊提供用 ctrl
+ f
進行搜尋的妙招 (?)
nnoremap <C-f> :Ack!<Space>
這會幫我們自動輸入 Ack!
這個指令,後面的字串就是你想找的目標啦~
這些工具安裝完後我認為 vim
就大致上完成啦!接下來會針對一些語言進行優化,因為 vim
也是一款能編輯任何語言的編輯器,所以各個語言還是需要客製一下的啦~